home *** CD-ROM | disk | FTP | other *** search
/ Graphics Plus / Graphics Plus.iso / general / convrtrs / pbmplus / texts.lha / README < prev    next >
Text File  |  1993-12-09  |  19KB  |  407 lines

  1.                            N E T P B M
  2.                      Release 7 December 1993
  3.  
  4. Netpbm is a toolkit for conversion of images between a variety of
  5. different formats, as well as to allow a few basic image operations.
  6. The package is intended to be portable to many platforms. It has been
  7. tested under UNIX (BSD and SYSV, e.g. SGI, Sun4, Sun386i, DEC and
  8. Apollo DN 3500), VMS and Amiga OS. There are also compiler directives
  9. in it for MS-DOS.
  10.  
  11. You'll find the latest release of Netpbm at the following sites:
  12. * wuarchive.wustl.edu (128.252.135.4),
  13.   directory /graphics/graphics/packages/NetPBM
  14. * ikaros.fysik4.kth.se (130.237.35.2), directory /pub/netpbm.
  15. * ftp.informatik.uni-oldenburg.de (134.106.1.9). This site also carries
  16.   binaries for the Amiga.
  17. * peipa.essex.ac.uk (155.245.115.161), directory ipa/src/manip
  18. * ftp.rahul.net (192.160.13.1), directory /pub/davidsen/source
  19. * ftp.cs.ubc.ca, directory /ftp/archive/netpbm
  20.  
  21. You'll also find a mirror site at the BBS:
  22. * sixhub.tmr.com in the "source" area.
  23.  
  24. Netpbm is based on the widely spread Pbmplus package (release: 10 Dec 91).
  25. On top of that, a lot of improvements and additions have been made. After
  26. the latest release of Pbmplus, a lot of additional filters have been
  27. circulating on the net. The aim of Netpbm was, to collect these and to turn
  28. them into a package. This work has been performed by a group of program-
  29. mers all over the world. If *you* have some code to add, please contact us,
  30. and we will incorporate it. There is a mailing list for discussions about
  31. Netpbm. You post a message to the list by writing to "netpbm@fysik4.kth.se".
  32. If you want to be on the list, please contact the list administrator,
  33. "oliver@fysik4.kth.se".
  34.  
  35. Please note, that this is not an official Pbmplus release. The code in
  36. this release is merely a collection of code from various sources around
  37. the world. Not all of the new code parts follow the high standard of
  38. programming of Pbmplus. We have tried to make the code portable to as
  39. many systems as possible, but we haven't cleaned up all routines. We hope
  40. that this release will help the many users of Pbmplus to upgrade their
  41. code all in one piece, instead of having to hunt down different code
  42. fragments at different sites around the world. We also hope, that our
  43. effort will help the author of Pbmplus, Jef Poskanzer, to make a new
  44. official release soon.
  45.  
  46. The file Netpbm lists all new featues and functions in netpbm.
  47.  
  48. Below this line follows the original README file from Pbmplus.
  49.  
  50. ***************************************************************
  51.  
  52.  
  53.                   Extended Portable Bitmap Toolkit
  54.                       Distribution of 10dec91
  55.                    Previous distribution 30oct91
  56.  
  57.  
  58. PBMPLUS is a toolkit for converting various image formats to and from
  59. portable formats, and therefore to and from each other.  The idea is,
  60. if you want to convert among N image formats, you only need 2*N
  61. conversion filters, instead of the N^2 you would need if you wrote each
  62. one separately.
  63.  
  64. In addition to the converters, the package includes some simple tools
  65. for manipulating the portable formats.
  66.  
  67. The package is broken up into four parts.  First is PBM, for bitmaps (1
  68. bit per pixel).  Then there is PGM, for grayscale images.  Next is PPM,
  69. for full-color images.  Last, there is PNM, which does content-independent
  70. manipulations on any of the three internal formats, and also handles
  71. external formats that have multiple types.
  72.  
  73. The parts are upwards compatible: PGM reads both PGM and PBM files and
  74. writes PGM; PPM reads all three and writes PPM; and PNM reads all three
  75. and writes, usually, the same type as it read.  Whenever PNM makes an
  76. exception and "promotes" a file to a higher format, it lets you know.
  77.  
  78.  
  79. INSTALLATION
  80.  
  81.     Unpack the files.
  82.     If you have the TIFF library (./libtiff) and are going to use it, copy the
  83.       appropriate Makefile into place, read the comments in libtiff/README,
  84.       and edit libtiff/tiffconf.h or the Makefile to reflect your compiler and
  85.       options.
  86.     Decide whether you want to use Imakefiles or Makefiles.  If you want
  87.       to use Makefiles:
  88.  
  89.     Edit the top-level Makefile, find each line with the string
  90.       "CONFIGURE", and follow the directions for setting configuration
  91.       options.
  92.     Likewise edit pbmplus.h.
  93.     If you are using gnu make, you have to edit *all* the Makefiles
  94.       and remove all the imake stuff at the ends, otherwise gnu make
  95.       will overwrite the Makefiles.
  96.     Make.
  97.     When you're happy that things compiled ok, make install.
  98.     
  99.     If you want to use Imakefiles:
  100.  
  101.     Edit Pbmplus.tmpl, find each line with the string "CONFIGURE",
  102.       and follow the directions for setting configuration options.
  103.     Likewise edit pbmplus.h.
  104.     Save the original Makefiles, in case you later want to switch back
  105.       to using them.
  106.     The usual X11 sequence of xmkmf, make Makefiles, make depend, then
  107.       make should work. If you have the TIFF libraries, the second step
  108.       should be "make SUBDIRS='./pbm ./pgm ./ppm ./pnm' Makefiles".
  109.     When you're happy that things compiled ok, make install and
  110.       make install.man.
  111.  
  112. After installing the manual pages, you may want to create the "whatis"
  113. file by doing a catman -w -M <directory>, or whatever the equivalent is
  114. on your system.
  115.  
  116.  
  117. SUPPORT
  118.  
  119. I've tested this stuff under SysV and BSD, on Sun 3's 4's and 386's and
  120. Sequents and Vaxen and HPs, with cc and gcc.  Nevertheless, I'm sure bugs
  121. remain, and portability to systems like Amigas and IBM compatibles is
  122. an interesting question.  Feedback is welcome; send bug reports,
  123. enhancements, etc. to this address:
  124.  
  125.     jef@well.sf.ca.us
  126.     apple!well!jef
  127.  
  128. When sending bug reports, always include the output from running any
  129. PBMPLUS program with the -version flag.  Also include the type of
  130. system you are on, what compiler you used, and whether you are using
  131. Makefiles or Imakefiles.  I try to respond to bug reports and enhancements
  132. promptly; say, within a week.
  133.  
  134. Also, if there is a new format or feature you would like to have added
  135. to the package, feel free to drop me a line.  If it's a format, include
  136. whatever documentation you have, and if possible a uuencoded sample.
  137. My response time will depend on how busy I am, and how easy the job
  138. looks.  If you need it right away, or it's a complicated job, you might
  139. consider paying me; lately, that's how a lot of work on the package has
  140. gotten done.
  141.  
  142. Finally, if you have access to Usenet, there's a newsgroup called
  143. alt.graphics.pixutils which is specifically for discussion of image
  144. conversion and editing packages such as PBMPLUS.  Posting stuff there
  145. is even better than mailing it to me, since it lets other people help
  146. out with the answers.
  147.  
  148.  
  149. HOW TO FIND THE RIGHT CONVERTER
  150.  
  151. Some people get confused by all the different names.  If you want to
  152. convert a pbm file to a Sun raster file, is it pbmtorast, pgmtorast,
  153. ppmtorast, or pnmtorast?  In this case some of the confusion might be
  154. because previous versions of the package did in fact have both
  155. pbmtorast and ppmtorast.  But mostly it's just too many different
  156. things to hold in your short term memory.  Fine, so don't even try to
  157. remember what's what.  That's what computers are for.  Unix, at least
  158. BSD Unix, has this great indexing feature on the "man" program.  You
  159. say "man -k <keyword>" and it gives you all the one-line descriptions
  160. with that keyword in them.  All the PBMPLUS man pages have nice useful
  161. one-line descriptions, that mention all the relevant keywords.  Try it,
  162. you'll like it.
  163.  
  164.  
  165. COPYRIGHTS
  166.  
  167. All the software in this package, whether by me or by a contributer,
  168. has a copyright similar to this one:
  169.  
  170.     Permission to use, copy, modify, and distribute this software and its
  171.     documentation for any purpose and without fee is hereby granted, provided
  172.     that the above copyright notice appear in all copies and that both that
  173.     copyright notice and this permission notice appear in supporting
  174.     documentation.  This software is provided "as is" without express or
  175.     implied warranty.
  176.  
  177. Many people get confused by this legalese, especially the part about
  178. "without fee".  Does this mean you can't charge for any product that
  179. uses PBMPLUS?  No.  All it means is that you don't have to pay me.
  180. You can do what you want with this software.  Build it into your
  181. package, steal code from it, whatever.  Just be sure to let people
  182. know where it came from.
  183.  
  184.  
  185. CONTENTS
  186.  
  187. Files in pbmplus.shar:
  188.  
  189.     README        this
  190.     CHANGES        list of changes between the various versions of PBM
  191.     TODO        list of things still to be done
  192.     FORMATS        list of the formats supported
  193.     OTHER.SYSTEMS    list of other free image-processing software
  194.     Makefile        guess
  195.     Imakefile        for X11-type installations
  196.     Imakefile.tiff    for X11-type installations
  197.     Pbmplus.tmpl    for X11-type installations
  198.     pbmplus.h        header file for PBM, PGM, PPM, and PNM
  199.  
  200.     compat.csh        csh script for compatibility with old versions
  201.     compat.ksh        ksh script for compatibility with old versions
  202.     magic        additions for /etc/magic to recognize some image formats
  203.  
  204. Files in pbm.shar?:
  205.  
  206.     Makefile        guess
  207.     Imakefile        for X11-type installations
  208.  
  209.     atktopbm.c        convert Andrew Toolkit raster object to portable bitmap
  210.     brushtopbm.c    convert Xerox doodle brushes to portable bitmap
  211.     cmuwmtopbm.c    convert CMU window manager format to portable bitmap
  212.     g3topbm.c        convert Group 3 FAX to portable bitmap
  213.     icontopbm.c        convert Sun icon to portable bitmap
  214.     gemtopbm.c        convert GEM .img format to portable bitmap
  215.     macptopbm.c        convert MacPaint to portable bitmap
  216.     mgrtopbm.c        convert MGR format to portable bitmap
  217.     pi3topbm.c        convert Atari Degas .pi3 to portable bitmap
  218.     xbmtopbm.c        convert X10 or X11 bitmap to portable bitmap
  219.     ybmtopbm.c        convert Bennet Yee "face" file into portable bitmap
  220.  
  221.     pbmto10x.c        convert portable bitmap to Gemini 10x printer graphics
  222.     pbmtoascii.c    convert portable bitmap to ASCII graphic form
  223.     pbmtoatk.c        convert portable bitmap to Andrew Toolkit raster object
  224.     pbmtobbnbg.c    convert portable bitmap to BBN BitGraph graphics
  225.     pbmtocmuwm.c    convert portable bitmap to CMU window manager format
  226.     pbmtoepson.c    convert portable bitmap to Epson printer graphics
  227.     pbmtog3.c        convert portable bitmap to Group 3 FAX
  228.     pbmtogem.c        convert portable bitmap into GEM .img file
  229.     pbmtogo.c        convert portable bitmap to GraphOn graphics
  230.     pbmtoicon.c        convert portable bitmap to Sun icon
  231.     pbmtolj.c        convert portable bitmap to HP LaserJet graphics
  232.     pbmtomacp.c        convert portable bitmap to MacPaint
  233.     pbmtomgr.c        convert portable bitmap to MGR format
  234.     pbmtopi3.c        convert portable bitmap to Atari Degas .pi3
  235.     pbmtoplot.c        convert portable bitmap into Unix plot(5) file
  236.     pbmtoptx.c        convert portable bitmap to Printronix graphics
  237.     pbmtoxbm.c        convert portable bitmap to X11 bitmap
  238.     pbmtox10bm.c    convert portable bitmap to X10 bitmap
  239.     pbmtoybm.c        convert portable bitmap into Bennet Yee "face" file
  240.     pbmtozinc.c        convert portable bitmap to Zinc Interface Library icon
  241.  
  242.     pbmlife.c        apply Conway's rules of Life to a portable bitmap
  243.     pbmmake.c        create a blank bitmap of a specified size
  244.     pbmmask.c        create a mask bitmap from a regular bitmap
  245.     pbmreduce.c        reduce a portable bitmap N times, using Floyd-Steinberg
  246.     pbmtext.c        render text into a bitmap
  247.     pbmupc.c        create a Universal Product Code bitmap
  248.  
  249.     libpbm[1-5].c    a few utility routines
  250.     pbmmerge.c        merge wrapper routine
  251.     pbm.h        header file for libpbm
  252.     pbmfont.h        header file for font routines in libpbm
  253.     libpbm.h        internal header file for libpbm
  254.     g3.h        definitions for Group 3 FAX
  255.     macp.h        definitions for MacPaint files
  256.     bitreverse.h    useful include file
  257.     *.1            manual entries for all of the tools
  258.     pbm.5        manual entry for the pbm format
  259.     libpbm.3        manual entry for the pbm library
  260.  
  261. Files in pgm.shar?:
  262.  
  263.     Makefile        guess
  264.     Imakefile        for X11-type installations
  265.  
  266.     fitstopgm.c        convert FITS format to portable graymap
  267.     fstopgm.c        convert Usenix FaceSaver(tm) format to portable graymap
  268.     hipstopgm.c        convert HIPS format to portable graymap
  269.     lispmtopgm.c    convert a Lisp Machine bitmap file into pgm format
  270.     psidtopgm.c        convert PostScript "image" data to portable graymap
  271.     rawtopgm.c        convert raw grayscale bytes to portable graymap
  272.  
  273.     pgmtofits.c        convert portable graymap to FITS format
  274.     pgmtofs.c        convert portable graymap to Usenix FaceSaver(tm) format
  275.     pgmtolispm.c    convert a portable graymap into Lisp Machine format
  276.     pgmtopbm.c        convert portable graymap to portable bitmap
  277.  
  278.     pgmbentley.c    Bentleyize a portable graymap
  279.     pgmcrater.c        create cratered terrain by fractal forgery
  280.     pgmedge.c        edge-detect a portable graymap
  281.     pgmenhance.c    edge-enhance a portable graymap
  282.     pgmhist.c        print a histogram of the values in a portable graymap
  283.     pgmnorm.c        normalize contrast in a portable graymap
  284.     pgmoil.c        turn a portable graymap into an oil painting
  285.     pgmramp.c        generate a grayscale ramp
  286.     pgmtexture.c    calculate textural features on a portable graymap
  287.  
  288.     libpgm[1-3].c    a few utility routines
  289.     pgmmerge.c        merge wrapper routine
  290.     pgm.h        header file for libpgm
  291.     libpgm.h        internal header file for libpgm
  292.     dithers.h        useful include file
  293.     *.1            manual entries for all of the tools
  294.     pgm.5        manual entry for the pgm format
  295.     libpgm.3        manual entry for the pgm library
  296.  
  297. Files in ppm.shar?:
  298.  
  299.     Makefile        guess
  300.     Imakefile        for X11-type installations
  301.  
  302.     giftoppm.c        convert GIF to portable pixmap
  303.     gouldtoppm.c    convert Gould scanner file to portable pixmap
  304.     ilbmtoppm.c        convert IFF ILBM to portable pixmap
  305.     imgtoppm.c        convert Img-whatnot to portable pixmap
  306.     mtvtoppm.c        convert MTV ray-tracer output to portable pixmap
  307.     pcxtoppm.c        convert PC Paintbrush format to portable pixmap
  308.     pgmtoppm.c        colorize a portable graymap into a portable pixmap
  309.     pi1toppm.c        convert Atari Degas .pi1 to portable pixmap
  310.     picttoppm.c        convert Macintosh PICT to portable pixmap
  311.     pjtoppm.c        convert HP PaintJet file to portable pixmap
  312.     qrttoppm.c        convert QRT ray-tracer output to portable pixmap
  313.     rawtoppm.c        convert raw RGB bytes to portable pixmap
  314.     rgb3toppm.c        combine three portable graymaps into one portable pixmap
  315.     sldtoppm.c        convert an AutoCAD slide file into a portable pixmap
  316.     spctoppm.c        convert Atari compressed Spectrum to portable pixmap
  317.     sputoppm.c        convert Atari uncompressed Spectrum to portable pixmap
  318.     tgatoppm.c        convert TrueVision Targa file to portable pixmap
  319.     ximtoppm.c        convert Xim to portable pixmap
  320.     xpmtoppm.c        convert XPM format to portable pixmap
  321.     yuvtoppm.c        convert Abekas YUV format to portable pixmap
  322.  
  323.     ppmtoacad.c        convert portable pixmap to AutoCAD database or slide
  324.     ppmtogif.c        convert portable pixmap to GIF
  325.     ppmtoicr.c        convert portable pixmap to NCSA ICR graphics
  326.     ppmtoilbm.c        convert portable pixmap to IFF ILBM
  327.     ppmtopcx.c        convert portable pixmap to PC Paintbrush format
  328.     ppmtopgm.c        convert portable pixmap to portable graymap
  329.     ppmtopi1.c        convert portable pixmap to Atari Degas .pi1
  330.     ppmtopict.c        convert portable pixmap to Macintosh PICT
  331.     ppmtopj.c        convert portable pixmap to HP PaintJet file
  332.     ppmtopuzz.c        convert portable pixmap to X11 "puzzle" file
  333.     ppmtorgb3.c        separate a portable pixmap into three portable graymaps
  334.     ppmtosixel.c    convert portable pixmap to DEC sixel format
  335.     ppmtotga.c        convert portable pixmap to TrueVision Targa file
  336.     ppmtouil.c        convert portable pixmap to Motif UIL icon file
  337.     ppmtoxpm.c        convert portable pixmap to XPM format
  338.     ppmtoyuv.c        convert portable pixmap to Abekas YUV format
  339.  
  340.     ppmdither.c        ordered dither for color images
  341.     ppmforge.c        fractal forgeries of clouds, planets, and starry skies
  342.     ppmhist.c        print a histogram of a portable pixmap
  343.     ppmmake.c        create a pixmap of a specified size and color
  344.     ppmpat.c        create a pretty pixmap
  345.     ppmquant.c        quantize colors down to a specified number
  346.     ppmquantall        script to run ppmquant on a set of pixmaps
  347.     ppmrelief.c        run a Laplacian Relief filter on a portable pixmap
  348.  
  349.     libppm[1-5].c    a few utility routines
  350.     ppmmerge.c        merge wrapper routine
  351.     ppm.h        header file for libppm
  352.     ppmcmap.h        header file for colormap routines in libppm
  353.     ppmdraw.h        header file for simple drawing routines in libppm
  354.     libppm.h        internal header file for libppm
  355.     autocad.h        definitions for AutoCAD files
  356.     tga.h        definitions for TrueVision Targa files
  357.     xim.h        definitions for Xim files
  358.     *.1            manual entries for all of the tools
  359.     ppm.5        manual entry for the ppm format
  360.     libppm.3        manual entry for the ppm library
  361.  
  362. Files in pnm.shar?:
  363.  
  364.     Makefile        guess
  365.     Imakefile        for X11-type installations
  366.  
  367.     anytopnm        script to attempt to convert any format to P?M
  368.     rasttopnm.c        convert Sun raster file to portable anymap
  369.     tifftopnm.c        convert TIFF file to portable anymap
  370.     xwdtopnm.c        convert X10 or X11 window dump to portable anymap
  371.  
  372.     pnmtops.c        convert portable anymap to PostScript
  373.     pnmtorast.c        convert portable anymap to Sun raster file
  374.     pnmtotiff.c        convert portable anymap to TIFF file
  375.     pnmtoxwd.c        convert portable anymap to X11 window dump
  376.  
  377.     pnmarith.c        perform arithmetic on two portable anymaps
  378.     pnmcat.c        concatenate portable anymaps
  379.     pnmconvol.c        general MxN convolution on a portable anymap
  380.     pnmcrop.c        crop all like-colored borders off a portable anymap
  381.     pnmcut.c        select a rectangular region from a portable anymap
  382.     pnmdepth.c        change the maxval in a portable anymap
  383.     pnmenlarge.c    enlarge a portable anymap N times
  384.     pnmfile.c        describe a portable anymap
  385.     pnmflip.c        perform one or more flip operations on a portable anymap
  386.     pnmgamma.c        perform gamma correction on a portable anymap
  387.     pnmindex        script to build a visual index of a bunch of anymaps
  388.     pnminvert.c        invert a portable anymap
  389.     pnmmargin        script to add a margin to a portable anymap
  390.     pnmnoraw.c        force a portable anymap into ASCII format
  391.     pnmpaste.c        paste a rectangle into a portable anymap
  392.     pnmrotate.c        rotate a portable anymap
  393.     pnmscale.c        scale a portable anymap
  394.     pnmshear.c        shear a portable anymap
  395.     pnmsmooth        script that uses pnmconvol to smooth a anymap
  396.     pnmtile.c        replicate a portable anymap into a specified size
  397.  
  398.     libpnm[1-4].c    a few utility routines
  399.     pnmmerge.c        merge wrapper routine
  400.     pnm.h        header file for libpnm
  401.     rast.h        definitions for Sun raster files
  402.     x10wd.h        definitions for X10 window dumps
  403.     x11wd.h        definitions for X11 window dumps
  404.     *.1            manual entries for all of the tools
  405.     pnm.5        manual entry for the pnm format
  406.     libpnm.3        manual entry for the pnm library
  407.